package com.xuqi.Game.Tetris;

import java.util.ArrayList;

import com.xuqi.Game.GameDrawElemIF;
import com.xuqi.Game.GameElemShape;
import com.xuqi.Game.GameElement;

public class TetrisZ extends Tetris
{
	public TetrisZ()
	{
		super();
		ArrayList<GameDrawElemIF> elemList = new ArrayList<GameDrawElemIF>();
		ArrayList<GameDrawElemIF> shapeList = new ArrayList<GameDrawElemIF>();
		ArrayList<GameDrawElemIF> stateList = new ArrayList<GameDrawElemIF>();
		
		GameElement elem = new GameElement();
		elem.SetElemColor(GetColor());
		elem.SetSize(40, 40);
		elemList.add(elem);
		GameElemShape shape = null;
		
		stateList.add(new GameElemShape(elemList,GetShape(m_shape,0),new SLoaction(0,0)));
		stateList.add(new GameElemShape(elemList,GetShape(m_shape,1),new SLoaction(0,0)));
		stateList.add(new GameElemShape(elemList,GetShape(m_shape,2),new SLoaction(0,0)));
		stateList.add(new GameElemShape(elemList,GetShape(m_shape,3),new SLoaction(0,0)));

		SetStateList(stateList);
		m_DataShape = ChangeDataShape(m_shape);
	}
	
	
	private final byte[][][] m_shape = new byte[][][]
	   {
			{{B,B,A,A},{A,B,A,A},{B,B,A,A},{A,B,A,A,}},															
			{{A,B,B,A},{B,B,A,A},{A,B,B,A},{B,B,A,A,}},															
			{{A,A,A,A},{B,A,A,A},{A,A,A,A},{B,A,A,A,}},															
			{{A,A,A,A},{A,A,A,A},{A,A,A,A},{A,A,A,A,}},	
	};
}
